package com.jtny.nytb.equipment.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.jtny.component.entity.PageData;
import com.jtny.nytb.equipment.domain.areatype.DeviceAreaDO;
import com.jtny.nytb.equipment.vo.typeAndArea.DeviceAreaExcelVO;
import com.jtny.nytb.equipment.vo.typeAndArea.DeviceAreaRequestVO;
import com.jtny.nytb.equipment.vo.typeAndArea.DeviceAreaResponseVO;
import org.springframework.stereotype.Service;
import org.springframework.web.bind.annotation.RequestBody;

import java.util.List;
import java.util.Map;

@Service
public interface DeviceAreaService extends IService<DeviceAreaDO> {
    DeviceAreaResponseVO getDeviceAreaByName(@RequestBody String name);
    void saveOrUpdateDeviceArea(List<DeviceAreaRequestVO> deviceAreaParamVos);

    void enableArea(DeviceAreaRequestVO deviceAreaParamVo);

    List<DeviceAreaResponseVO> selectTree();

    List<DeviceAreaResponseVO> selectList(DeviceAreaRequestVO deviceAreaParamVo);

    List<DeviceAreaResponseVO> selectListForRecu(DeviceAreaRequestVO deviceAreaParamVo);

    PageData<DeviceAreaResponseVO> selectPageList(DeviceAreaRequestVO deviceAreaParamVo);

    void removeByIds(List<Long> ids);

    void exportExcel(List<DeviceAreaExcelVO> objects);

    Map<String, DeviceAreaResponseVO> mapDeviceAreaByNameList(List<String> areaNameList);
}
